<?php
/**
 * periode/index.phtml
 * Vue par défaut pour les Périodes
 */
?>
<?php

use RHX\Helper\RHDateTime;
?>
<?php
$title = 'Périodes';
$this->headTitle($title);
// Variables
/**
 * @var RHDateTime $nextMonday Date du Prochain Lundi
 */
$nextMonday	 = $this->nextMonday;
$nextLabel	 = $this->nextLabel;
?>
<!-- ENTETE -->
<div class='content-head'>
    <h3>
	<?php echo $title ?>
	<img src='<?php echo $this->basePath() . '/img/rhx/refresh-16x16.png' ?>' title="Actualiser la liste" class='rhx-refresh'>
    </h3>
    <div class='toolbar'>
        <div class="toggle add" title="Ajouter">
            <a href="#" style="display: block; width: 100%; height: 100%;" onclick="$('.add-toggle').toggle('slow'); return false;"></a>
        </div>
    </div>
</div>

<!-- CONTENU -->
<div class='content-body'>
    <div class='add-toggle'>
	<div class='list-container' id="newPeriodeForm">
	    <table class="table table-striped list-table">
		<thead>
		    <tr>
			<td width='42%' style='text-align: center; font-weight: bold'>Libellé</td>
			<td width='25%' style='text-align: center; font-weight: bold'>Début</td>
			<td width='25%' style='text-align: center; font-weight: bold'>Fin</td>
			<td width='8%'>&nbsp;</td>
		    </tr>
		</thead>
		<tbody>
		    <tr>
			<td style='text-indent: 10px'>
			    <a href='<?php echo $nextLabel ?>' id='libelle' data-type='text' onclick='return false;'><?php //echo $nextLabel  ?></a><a href="#" id="libelle-suffixe" onclick="return false;"></a>
			</td>
			<td style='text-align: center;'>
			    <a href='<?php echo $nextMonday->dateFr() ?>' id='debut' data-type='text' onclick='return false;'><?php echo $nextMonday->dateFr() ?></a>
			</td>
			<td style='text-align: center;'>
			    <a href='#' id='fin' data-type='select'>0000-00-00</a>
			</td>
			<td style='text-align: center;'>
			    <button id="data-validate" class='btn btn-success' style="display: none;" onclick="return addNew();">Ajouter</button>
			</td>
		    </tr>
		</tbody>
	    </table>
	    <form id="newPeriode" action="#" method="post" style="display: none;">
		<input type="hidden" name="libelle" value="<?php //echo $nextLabel  ?>">
		<input type="hidden" name="suffixe" id="suffixe" value="">
		<input type="hidden" name="debut" value="<?php echo $nextMonday->date() ?>">
		<input type="hidden" id="data-fin" name="fin" value="<?php echo '0000-00-00' ?>">
	    </form>
	</div>
    </div>

    <!-- CONTENU AJAX -->
    <div id='content-data'>
	<!-- AJAX LOADING -->
    </div>
</div>

<script type='text/javascript'>
    // Variables de mois
    var months = new Array();
    months[1] = 'Janvier';
    months[2] = 'Février';
    months[3] = 'Mars';
    months[4] = 'Avril';
    months[5] = 'Mai';
    months[6] = 'Juin';
    months[7] = 'Juillet';
    months[8] = 'Août';
    months[9] = 'Septembre';
    months[10] = 'Octobre';
    months[11] = 'Novembre';
    months[12] = 'Décembre';
    $(function(){
	// Chargement par défaut de la page 1
	ajax = $.ajax({
	    type : "post",
	    url  : "<?php echo $this->url('RHX/default', array('controller'	 => 'periode', 'action'	 => 'loadIndex', 'id'		 => 1)) ?>"
	});
	ajax.success(function(data){
	    $('#content-data').html(data);
	});
	ajax.error(function(){
	    $("#content-data").html("<div class='rh-error'>Contenu Impossible à charger</div>");
	});

	// Editable Sundays List
	$('#fin').editable({
	    source: "<?php echo $this->url('RHX/default', array('controller'	 => 'periode', 'action'	 => 'jsonSundayList')) ?>",
	    validate: function(value){
		$('#data-fin').val(value);
		$('#data-validate').show('slow');
		// Affecter un nom suffixe
		annee = value.substr(0, 4);
		mois = parseInt(value.substr(5, 2));
		suffix = months[mois] + ' ' + annee;
		$('#suffixe').val(suffix);
		//$('#libelle-suffixe').hide().html(' : ' + suffix).fadeIn('normal');
		$('#libelle-suffixe').hide().html(suffix).fadeIn('normal');
	    }
	});

	// Clic sur actualiser
	$('.rhx-refresh').click(function(event){
	    event.preventDefault();
	    updateList();
	});
    });
    
    /**
    * Acutaliser la page

     * @param {int} page
     * @returns {Boolean}     */
    function updateList(page){
	if(!page) page = 1;
	ajax = $.ajax({
	    type : "post",
	    url  : "<?php echo $this->url('RHX/default', array('controller'	 => 'periode', 'action'	 => 'loadIndex')) ?>/" + page
	});
	ajax.success(function(data){
	    $('#content-data').hide().html(data).fadeIn('normal');
	});
	ajax.error(function(){
	    $("#content-data").hide().fadeIn('normal').html("<div class='rh-error'>Contenu Impossible à charger</div>");
	});

	return false;
    }

    /**
     * Ajout d'un nouveau Site
     * 
     * @returns {Boolean}
     */
    function addNew(){
	ajax = $.ajax({
	    type : 'post',
	    url  : '<?php echo $this->url('RHX/default', array('controller' => 'periode', 'action' => 'addNew')) ?>',
	    data : $('#newPeriode').serialize()
	});
	ajax.success(function(){
	    window.location.reload();
	});
	ajax.error(function(){
	    alert('Erreur 13 : Une erreur est survenue lors de l\'ajout d\'une nouvelle Période');
	});

	return false;
    }
</script>